package com.heima.freemarker.controller;

import com.heima.freemarker.entity.Student;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.client.RestTemplate;

import java.util.*;

@Controller
public class HelloController {

    @GetMapping("/basic")
    public String test(Model model) {


        //1.纯文本形式的参数
        model.addAttribute("name", "freemarker");
        //2.实体类相关的参数

        Student student = new Student();
        student.setName("小明");
        student.setAge(18);
        model.addAttribute("stu", student);

        return "01-basic";
    }

    @GetMapping("/list")
    public String list(Model model){

        //------------------------------------
        Student stu1 = new Student();
        stu1.setName("小强");
        stu1.setAge(18);
        stu1.setMoney(1000.86f);
        stu1.setBirthday(new Date());

        //小红对象模型数据
        Student stu2 = new Student();
        stu2.setName("小红");
        stu2.setMoney(200.1f);
        stu2.setAge(19);

        //将两个对象模型数据存放到List集合中
        List<Student> stus1 = new ArrayList<>();
        stus1.add(stu1);
        stus1.add(stu2);


        List<Student> stus = getListStudent("小强", 10);


        //向model中存放List集合数据
        model.addAttribute("stus",stus);

        //------------------------------------

        //创建Map数据
        HashMap<String,Student> stuMap = new HashMap<>();
        stuMap.put("stu1",stu1);
        stuMap.put("stu2",stu2);
        // 3.1 向model中存放Map数据
        model.addAttribute("stuMap", stuMap);

        return "02-list";
    }
    private List<Student> getListStudent(String name,int num){
        List<Student> list =new ArrayList<>();
        for (int i=0;i<num;i++){
            Student stu1=new Student();
            stu1.setName(name+i);
            stu1.setAge((int)(Math.random()*100));  //10--99
            stu1.setMoney(Float.parseFloat(String.format("%.2f",Math.random()*1000)));//100-999
            stu1.setBirthday(new Date());
            list.add(stu1);
        }
        return list;
    }

    public static void main(String[] args) {
        double a=Math.random();// ----- 从1到10的int型随数
        double b=Math.random()*1000;
        String.format("%.2f",b);
        String.format("%.2f",Math.random()*1000);
        System.out.println(a);
        System.out.println(b);
        System.out.println(String.format("%.2f",b));
    }
}
